草庐IT

c++ - Windows UTF8 到 UTF16

全部标签

具有 unicode 支持且没有 COM 注册的 C++ xml 解析器

基于以下两个条件,我需要使用C++XML解析器/编写器来实现虚拟注册表。它不应该在注册表中写入条目它应该支持unicode字符。我尝试了以下解析器,但没有一个解析器解决了这2个条件:Msxml(写入注册表以创建COM)Xerces(注册COM)TinyXml(reg中没有条目,但不支持unicode字符)快速Xml(无unicodeuspport)所以如果你能知道任何解决我的2条件的方法,请告诉我 最佳答案 看看pugixml. 关于具有unicode支持且没有COM注册的C++xml解

.net - 如何将 UTF-8 编码为 UTF-16 的 xml 字符串转换为 UTF-16?

例如,假设我在字符串中有以下xml:如果我尝试将其插入到带有Xml列的SQLServer2005数据库表中,我将收到以下错误(我使用的是EF4.1,但我认为这无关紧要):XMLparsing:line1,character38,unabletoswitchtheencoding经过一些研究,我了解到SQLServer要求xml为UTF-16。我如何转换它? 最佳答案 我最初的几次尝试涉及流、字节数组和许多编码问题。事实证明,.NET中的字符串已经是UTF-16,因此只需要更改xml声明。其实答案很简单。这是一个将字符串加载到XmlD

c - OpenCV 中的 XML 解析器

我有一个文件locations.xml,其中包含图像文件名,以及在相应图像上绘制的矩形的位置。XML节点结构如下:ryoungt_05.08.2002/aPICT0034.JPG我需要在OpenCV中打开这个文件并读取它,对于XML文件中的每个图像文件名,相应的图像将在窗口中打开,矩形将绘制在对应图片。基本上,我需要打开这些文件并查看矩形,以便使用文本检测算法将它们与绘制在相同图像上的矩形相匹配。但它正在处理让我难过的XML文件。感谢您的帮助。 最佳答案 OpenCV是OpenCV,XML是XML。一个与另一个没有太大关系。检查这个

c# - new UTF8Encoding(false) 仍然写 utf8 BOM

我在我的代码中关闭了BOM,但它仍在我的xml文档中打印它。我不明白。我已经查看了很多资源,但仍然一无所获,应该从开始我的代码是通用的XDocumentxmlDoc=XDocument.Load(CompDir+File.Name);AppendToFile(xmlDoc,aDataRow);using(varwriter=newXmlTextWriter(FilePrep.CompletedDirectory+File.Name,newUTF8Encoding(false))){xmlDoc.Save(writer);writer.Close();}break;附加到文件看起来像这样

.net - 为什么 xmltextreader 会自动将 html 编码的 utf8 字符转换为 utf8 字符串?

我收到一个编码为“ISO-8859-1”(Latin-1)的XML文件在文件中(以及其他标签)我有Example"content"And─现在出于某种原因,当我将其加载到XMLTextReader中并执行“XmlReader.Value”以返回值时,它返回:“content”并且─然后,当遇到只接受Latin-1编码的数据库时,显然会出错。我尝试了以下方法:转换成字节并使用Encoding.Convert以从UTF-8更改进入Latin-1(成功给了我一堆“?”相反)使用StreamReader(文件,编码。随便)将文件加载到XmlTextReader以

sql-server - 存储过程不喜欢 utf-16

全部,我在SQLServer2005上有一个接受XML参数的存储过程。当我执行时:execPutResultsOnDb''我得到错误:XML解析:第1行,字符39,无法切换编码但是当我这样做的时候execPutResultsOnDb''它工作得很好。有什么想法吗? 最佳答案 第一种情况失败,因为您声明在ASCII字符串中使用UTF-16编码XML。第二种情况很可能有效,因为您没有任何超过127的字符,因此UTF-8与ASCII无法区分。如果要将XML声明为UTF-16,则需要使用N前缀将字符串声明为UCS-2(即mostlycomp

php - 另一个 PHP XML 解析错误 : "Input is not proper UTF-8, indicate encoding!"

错误:Warning:simplexml_load_string()[function.simplexml-load-string]:Entity:line3:parsererror:InputisnotproperUTF-8,indicateencoding!Bytes:0xE70x610x690x73数据库中的XML(在FF中查看源代码的输出):role_fraRoleenfrançaisRoleçenfrançais如果我没理解错的话,这个错误与old_value标签中编码的第一个ç有关。准确的说,这个错误是根据bytes:"çais"?这是我加载X

基于 C 的 XML 解析器

推荐使用C语言解析TMX文件(基于XML的map)的XML解析器是什么?它们各自的优缺点是什么,因为我希望有一个高效的,因为它将在嵌入式系统上运行。 最佳答案 不久前,我们在嵌入式产品上使用了libxml。它可能适合您。 关于基于C的XML解析器,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/5434919/

c# - 在 UTF16 列中存储 UTF8 数据

我将XML存储在SQLServer的XML列中。SQLServer在内部以UTF-16格式存储数据。因此,存储的XML必须采用UTF-16。我的XML是utf-8格式的,它在顶部有这个声明:当我尝试插入带有UTF-8声明的xml时,我收到一个异常,说明有关编码的内容。我可以通过两种方式轻松解决此问题:删除声明或通过将声明更改为:问题我不知道删除或替换声明是否“安全”或正确。我会丢失数据,还是XML会损坏?或者我是否必须将C#中的字符串从utf-8转换为utf-16? 最佳答案 C#将字符串存储在UCS-2中,这是UTF-16标准的旧

ruby 2 : Recognizing decomposed utf8 in XML entities (NFD)

问题问题很简单:我有包含这个值的XML穆勒这似乎是用变音符号表示u的有效XML格式,就像这样。穆勒但是到目前为止,我们尝试过的所有解析器都会生成u¨——两个不同的字符。背景这种形式的unicode(UTF-8)使用两个代码点来表示单个字符;称为NormalizedFormDecomposed或NFD,二进制形式为\303\274。大多数字符也可以表示为单个代码点和实体,包括这种情况。XML还可以包含ü或ü或ü并且在二进制中是\195\188。这称为归一化形式组合。这些中的任何一个都可以正常工作。正确回答问题所以我认为问题是:是否有一个解析器(似乎不是nokogiri)可以检测并规范化为